package com.ytjj.qmyx.mall.mapper;

import com.ytjj.qmyx.mall.model.Dynamic;
import com.ytjj.qmyx.mall.model.response.FiveSpuriorDynamicResponse;
import com.ytjj.qmyx.mall.model.vo.DynamicVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 动态dao
 *
 * 
 * @version 1.0
 * 
 */
public interface DynamicDao {

    /**
     * 根据专区id查询动态列表
     *
     * @param specialId
     * @return
     */
    List<Dynamic> queryDynamicBySpecialId(@Param("specialId") Integer specialId);

    /**
     * 查询动态列表
     *
     * @return
     */
    List<Dynamic> queryDynamicList();


    /**
     * 根据状态批量修改动态
     *
     * @param isReason
     * @return
     */
    List<Dynamic> getH5DynamicVideoList(@Param("isReason") Byte isReason);

    Integer getDynamicCount(@Param("userId") Integer userId);

    /**
     * 根据userId获取动态
     *
     * @param userId
     * @return
     */
    List<Dynamic> getDynamicListByUserId(Integer userId);

    List<Dynamic> getDynamicByUserId(Integer userId);

    Dynamic findById(@Param("dynamicId") Integer dynamicId, @Param("pageNum") Integer pageNum);

    List<DynamicVO> getDynamicIdsById(Integer productId);

    List<DynamicVO> selectByProductIds(@Param("ids") List<Integer> ids);

    Integer getDynamicByOrderInfoId(Integer id);

    /**
    * 随机取n条测评
    * @param randNum:
    * @returns: java.util.List<com.ytjj.qmyx.mall.model.vo.DynamicVO>
    * 
    */
    List<DynamicVO> selectByRand(Integer randNum,Integer id);

    List<FiveSpuriorDynamicResponse> getFiveSuperiorDynamic();
}
